import api from "@/api/api";
var roadRoleUrl = null;

export default class {
  // 调用api.clearAccountCache时，自动调用此方法
  clearAccountCache() {
    roadRoleUrl = null;
    roleUrlMap.clear();
  }

  // 下载工程资源
  downloadResource(path) {
    api.downloadFile(api.demand.getResUrl("/park/download/" + path));
  }

  // 下载base64图片
  downloadImage(imgUrl) {
    // 如果浏览器支持msSaveOrOpenBlob方法（也就是使用IE浏览器的时候），那么调用该方法去下载图片
    let tempTimeStr = "park_" + api.getFormatTime(new Date(), "yyyyMMddHHmmss");
    if (window.navigator.msSaveOrOpenBlob) {
      let bstr = atob(imgUrl.split(',')[1]);
      let n = bstr.length;
      let u8arr = new Uint8Array(n);
      while (n--) {
        u8arr[n] = bstr.charCodeAt(n);
      }
      let blob = new Blob([u8arr]);
      window.navigator.msSaveOrOpenBlob(blob, tempTimeStr + '.' + 'png');
    } else {
      // 这里就按照chrome等新版浏览器来处理
      const a = document.createElement('a');
      a.href = imgUrl;
      a.setAttribute('download', tempTimeStr);
      a.click();
    }
  }
}